package Grammar;

/**
 * @author shkstart
 * @date 2022/3/27 - 22:07
 */
public class AutomaticTypePromotion {
    public static void main(String[] args) {
//        当容量大与容量小的数据类型变量做运算时，结果自动提升为容量大的。
//        注释：容量时指数的范围大小 比如：float容量 > long容量
//        容量从小到大排序：
//        byte 、short 、char 、/ int / long / float / double
//        特别的: 当byte 、short 、char 三种类型的变量做运算时，结果为int型
//        以下为代码例子
        byte b1 = 2;
        int i1 = 129;
        int b2 =  (b1 + i1);
        System.out.println("b2 = " + b2);
        double d1 = 123.232323332;
        float f1 = (float) d1;
        System.out.println("f1 = " + f1);
//        ***********特别的******************
        char c1 = 'a';
        int i3 = 10;
        int i4 = c1 + i3;
        System.out.println("i4 = " + i4);
        short s2 = 12;
//        char c2 = c1 + s2; //编译不通过
        byte b3 =  19;
//        byte b4 = b3 + b1;
//        char c3 = c1 + b2;










    }
}
